namespace FileServer.Abstractions.Models.Entities;

/// <summary>
/// 文件存储模型
/// </summary>
public class FileResource
{
    /// <summary>
    /// 文件id
    /// </summary>
    public string Id { get; set; }

    /// <summary>
    /// 文件号
    /// </summary>
    public string FileNo { get; set; }

    /// <summary>
    /// 文件大小
    /// </summary>
    public long Length { get; set; }

    /// <summary>
    /// 文件hash
    /// </summary>
    public string Hash { get; set; }

    /// <summary>
    /// 创建时间
    /// </summary>
    public DateTime CreateTime { get; set; }

    /// <summary>
    /// 完整存储路径
    /// </summary>
    public string Path { get; set; }

    /// <summary>
    /// 原文件名
    /// </summary>
    public string OriginName { get; set; }

    /// <summary>
    /// 是否是临时文件
    /// </summary>
    public bool IsTemp { get; set; }

    /// <summary>
    /// 有效时长 分钟数
    /// </summary>
    public int PeriodMinute { get; set; }

    /// <summary>
    /// 存储来源
    /// </summary>
    public string StorageKey { get; set; }

    /// <summary>
    /// 上传服务提供者 local 本地  oss 阿里云oss 其他的可自行扩充
    /// </summary>
    public string ProviderType { get; set; }
}